package com.zmn.oms.model.vo.work;

import com.alibaba.fastjson.annotation.JSONField;
import com.alibaba.fastjson.serializer.ToStringSerializer;
import com.zmn.oms.model.vo.remark.OrderRemarkDetail2VO;
import com.zmn.oms.model.vo.warning.OrderTagVO;
import com.zmn.oms.model.vo.warning.ZsWarningVO;
import lombok.Data;

import java.util.Date;
import java.util.List;

/**
 * 类描述：啄木鸟运营
 * @author lujia
 * @date 2018/12/01 11:43
 */
@Data
public class ZsOrderWorkVO {

    /**
     * 工单Id
     */
    @JSONField(serializeUsing = ToStringSerializer.class)
    private Long workId;

    /**
     * 订单Id
     */
    @JSONField(serializeUsing = ToStringSerializer.class)
    private Long orderId;

    /**
     * 业务类型
     */
    private Integer bizType;

    /**
     * 接单时间
     */
    @JSONField(format = "MM-dd HH:mm")
    private Date receiveTime;

    /**
     * 服务平台
     */
    private Integer platWork;

    /**
     * 预约时间
     */
    @JSONField(format = "MM-dd HH:mm")
    private Date dutyTime;

    /**
     * 回访时间
     */
    private Date replyVisitTime;

    /**
     * 回访操作员
     */
    private Long replyVisiterId;

    /**
     * 回访内容
     */
    private String replyContent;

    /**
     * 子公司名称
     */
    private String companyName;

    /**
     * 服务公司名称
     */
    private String manageCompanyName;

    /**
     * 前台产品二级分类名称
     */
    private String showCategTwoName;

    /**
     * 省份名称
     */
    private String provinceName;

    /**
     * zmn城市名称
     */
    private String cityName;

    /**
     * 自然城市名称
     */
    private String naturalCityName;

    /**
     * 区域名称
     */
    private String countyName;

    /**
     * 用户名称
     */
    private String username;

    /**
     * 用户电话
     */
    private String userPhone;

    /**
     * 用户选择地址
     */
    private String userStreet;

    /**
     * 用户填写地址
     */
    private String userAddress;

    /**
     * 性别
     */
    private Integer gender;

    /**
     * 产品基本信息
     */
    private String productInfo;

    /**
     * 故障现象
     */
    private String faultContent;

    /**
     * 主工程师id
     */
    private Integer masterId;

    /**
     * 工程师名称
     */
    private String masterName;

    /**
     * 工程师电话
     */
    private String masterPhone;

    /**
     * 工单状态
     */
    private Integer status;

    /**
     * 工单状态名称
     */
    private String statusName;

    /**
     * 工单类型名称
     */
    private String typeName;

    /**
     * 支付状态
     */
    private Integer payStatus;

    /**
     * 支付状态
     */
    private String payStatusName;

    /**
     * 定金支付状态
     */
    private Integer depositStatus;

    /**
     * 定金支付状态名称
     */
    private String depositStatusName;

    /**
     * 预支付状态
     */
    private Integer prepayStatus;

    /**
     * 渠道预付状态
     */
    private Integer channelPrepayStatus;

    /**
     * 预支付状态名称
     */
    private String prepayStatusName;

    /**
     * 结果状态
     */
    private Integer resultStatus;

    /**
     * 结果状态名称
     */
    private String resultStatusName;

    /**
     * 是否回访
     */
    private Boolean isReply;

    /**
     * 渠道ID
     */
    private Integer channelId;

    /**
     * 渠道名称
     */
    private String channelName;

    /**
     * 备注
     */
    private String currentRemark;


    /**************** 金额相关 (单位为分) *****************/
    /**
     * 订单金额
     */
    private Integer originalAmount;

    /**
     * 订单收入
     */
    private Integer totalAmount;

    /**
     * 预付款
     */
    private Integer prepayAmount;

    /**
     * 渠道预付款
     */
    private Integer channelPrepayAmount;

    /**
     * 工程师收款金额
     */
    private Integer masterAmount;

    /**
     * 定金
     */
    private Integer depositAmount;

    /**
     * 渠道费
     */
    private Integer channelAmount;

    /**
     * 退款总金额
     */
    private Integer refundAmount;

    /**
     * 内采配件金额
     */
    private Integer inSourcingPartAmount;

    /**
     * 外报配件金额
     */
    private Integer outSourcingPartAmount;

    /**
     * 订单杂项费用
     */
    private Integer deliverAmount;

    /**
     * 工程师绩效基数
     */
    private Integer billAmount;

    /**
     * 开票补贴金额
     */
    private Integer subsidyAmount;

    /**
     * 发票金额
     */
    private Integer invoiceAmount;

    /**
     * 警告标识
     */
    private ZsWarningVO warningVO;

    /**
     * 外部订单号
     */
    private String outerId;

    /**
     * 部门名称
     */
    protected String deptName;

    /**
     * 录单人名称
     */
    protected String creater;

    /**
     * 备注详情
     */
    private List<OrderRemarkDetail2VO> remarkDetailList;

    /**
     * 退款审核状态
     */
    private String refundReviewStatusName;

    /**
     * 工单标签
     */
    List<OrderTagVO> orderTagVoList;

    /**
     * 多次上门状态名称
     */
    private String multipleVisitStatusName;
}
